package Practicas.Funciones;
import java.util.Scanner;
public class CalculTirada {
    private int dados = 0, resultado, suma;
    private int[] array = new int[11];
    public static void main(String[] args){
        CalculTirada programa = new CalculTirada();
        programa.inici();
    }
    
    public void inici(){
        System.out.println("____________________________________________________\n");
        System.out.print(">> Escribe un número entero a calcular de [2 - 12]: ");
        leoValor();
        System.out.println("____________________________________________________\n");
        recorrerArray();
        generarTiradas();
        probabilidad();
        System.out.println("____________________________________________________\n");
    }
    
    /*
      Con este módulo leo el número insertado por el usuario.
      Comprobando que éste número sea un entero positivo entre 2 y 12.
    */
    public void leoValor(){
        boolean entra = false;
        
        do {
            Scanner lector = new Scanner(System.in);
            if (lector.hasNextInt()){
            dados = lector.nextInt();
            entra = true;
                if (dados < 2 || dados > 12){
                    System.out.print(">> Error: el valor no es un número entero entre 2 y 12: ");
                    lector.nextLine();
                }
            } else {
                System.out.print(">> Error: el valor no es un número entero entre 2 y 12: ");
                lector.nextLine();
            }
        } while (!entra || dados < 2 || dados > 12);
        dados = dados - 2;
    }
    
    public void recorrerArray(){
        //Recorro el array hasta la mitad.
        for (int i = 0; i <= array.length/2; i++){
            array[i] = i + 1;
        }
        
        //Decremento el array desde la última posición.
        for (int i = array.length/2; i < array.length ; i++){
            array[i] = array.length - i;
        }
    }
        
    public void generarTiradas(){
        //Guardo la posición del array con el número del valor que
        //   ha ingresado el usuario, en una variable nueva.
        suma = array[dados];
        for (int i = 0; i <= dados; i++){
            suma = array[i];
            //Calculo el resultado
            resultado = suma + resultado;
        }
    }
    
    //Cálculo de las probabilidades.
    public void probabilidad(){
        int prob;
        prob = resultado * 100 / 36;
        System.out.println(">> La probabilidad es de " + prob + "%.");
    }
}

